package top.z.work.module.system.controller.authorize.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
import lombok.Data;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

@Schema(description = "系统授权 - 登录成功 Token VO")
@Data
@Builder
@Accessors(chain = true)
public class AuthorizeTokenVO {

    @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1234")
    private Long userId;

    @Schema(description = "访问令牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "9a0e88a856aa4dd4beab45792f64abd9")
    private String accessToken;

    @Schema(description = "刷新令牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "ee2e1f085c3643a59530838b6ba60ee6")
    private String refreshToken;

    @Schema(description = "过期时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "2099-12-31 23:59:59")
    private LocalDateTime expireTime;

}
